#!/bin/bash

# 简化的ARM64构建脚本
echo "开始构建ARM64镜像（简化版）..."

# 清理之前失败的构建
docker system prune -f

# 尝试不同的构建方法
echo "方法1：使用buildx（如果可用）"
if command -v docker-buildx &> /dev/null; then
    docker buildx build --platform linux/arm64 -f Dockerfile.arm64 -t xianyu-auto-agent:arm64 .
elif docker buildx version &> /dev/null; then
    docker buildx build --platform linux/arm64 -f Dockerfile.arm64 -t xianyu-auto-agent:arm64 .
else
    echo "方法2：使用标准构建"
    # 尝试重新设置QEMU
    docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
    
    # 使用更简单的构建命令
    DOCKER_BUILDKIT=1 docker build -f Dockerfile.arm64 -t xianyu-auto-agent:arm64 .
fi

if [ $? -eq 0 ]; then
    echo "✅ ARM64镜像构建成功!"
    
    # 导出镜像
    docker save xianyu-auto-agent:arm64 -o xianyu-auto-agent-arm64.tar
    echo "✅ 镜像已导出到 xianyu-auto-agent-arm64.tar"
    ls -lh xianyu-auto-agent-arm64.tar
else
    echo "❌ 构建失败！尝试使用标准Dockerfile构建..."
    
    # 备用方案：使用原始Dockerfile直接构建
    DOCKER_BUILDKIT=1 docker build --platform linux/arm64 -t xianyu-auto-agent:arm64 .
    
    if [ $? -eq 0 ]; then
        echo "✅ 使用标准Dockerfile构建成功!"
        docker save xianyu-auto-agent:arm64 -o xianyu-auto-agent-arm64.tar
        echo "✅ 镜像已导出"
    else
        echo "❌ 所有构建方法都失败了"
        exit 1
    fi
fi